"""@functools.wraps装饰器的使用"""
import functools


# 获取当前登录用户信息的装饰器
def user_login_data(view_func):
    # 使用装饰器改变了被装饰的函数的一些特性(如函数名称)
    @functools.wraps(view_func)
    def wrapper(*args, **kwargs):
        return view_func(*args, **kwargs)
    return wrapper


def user_login_data1(view_func):
    def wrapper(*args, **kwargs):
        return view_func(*args, **kwargs)
    return wrapper

@user_login_data
def index():
    print("index~~~~")

@user_login_data1
def user():
    print("user~~~~~")

if __name__ == "__main__":
    print(index.__name__)
    print(user.__name__)
    """
    output:
        index
        wrapper
    """